#pragma once

#include <d3dx10.h>
#include "ICameraComponent.h"

#pragma comment(linker, "/INCLUDE:??0CenterCameraComponent@@QAE@XZ")

class CenterCameraComponent : public ICameraComponent
{
public:
	CenterCameraComponent();

	D3DXVECTOR3 getPosition();
	D3DXMATRIX getView();
	float getNearClip();
	float getCameraArc();
	void setCameraArc(float arc);
	float getCameraDistance();
	void setCameraDistance(float distance);
	float getCameraRotation();
	void setCameraRotation(float rotation);

	void Serialize(EnginePointer<ISerializerWriteContext>& context, char* name);
	static IEngineComponent* Deserialize(EnginePointer<ISerializerReadContext>& context);

	AUTO_SIZE;
private:
	EnginePointer<ID3D10Device> pDevice;
	float arc;
	float distance;
	float rotation;
};
